quick basic

更新时间:2023-11-28 01:36

QBASICBASIC(Beginner's All-purpose Symbolic Instruction Code,初学者通用指令代码)语言的一个变种,由美国微软公司开发,1991年MS-DOS 5.0推出。它不能被编译成独立的可执行文件源代码集成开发环境(IDE)中先被编译成中间代码,然后中间代码在IDE中被解释执行。它被设计用来代替GW-BASIC,并被集成在MS-DOS 5.0及其更高版本(包括Windows 95)中。QBASIC基于微软稍早推QuickBASIC 4.5,但去掉了后者的编译和链接部分。

现状和特点

微软在较新版本的Windows中不再集成QBASIC。不过Windows 98用户可以在光盘\TOOLS\OLDMSDOS目录中找到它,在Windows 95的光盘中,它存放在\OTHER\OLDMSDOS目录中。微软网站对它的技术支持只对MS-DOS的授权用户有效。

QBASIC拥有一个值得称道的集成开发环境和一个功能强大的集成调试器,这一切在那个时代让人耳目一新。直到今天,QBASIC依然是许多面向初学者的编程书籍的主题

改进

和Quick BASIC类似而又不同于微软其他BASIC的早期实现版本的是,QBASIC是一种结构化的编程语言。和GW-BASIC相比,QBASIC的主要改进是:

扩充了变量和常量的类型

变量名长度:40个字符

增加了长整型、定长字符型变量

可定义数值常量字符串常量

子程序和函数作为单独的模块

不需要行号

注:Quick BASIC简称QB,是一种编译型的语言;qbasic是一种解释型的语言,和Quick BASIC拥有一样的语法。同时,为了省时间,QBASIC中的PRINT 语句可以直接用?来代替。

常见语法

条件语句

if语句: IF 条件 THEN 语句组 ELSE 语句组2

块if语句

IF 条件 THEN

语句组

ELSE

语句组2

END IF

IF 语句还可如此运用

IF 条件 THEN

语句组

ELSEIF 条件 THEN

语句组2

END IF

多分支语句SELECT用法:

SELECT CASE 变量或字符串

CASE 情况1

语句组

CASE 情况2

语句组2

END SELECT

循环结构语句

1.计数循环

for 控制变量=初值 to 终值 step语句可有可无,若没有step语句,则步长为+1

语句体

next 控制变量

2.当型循环

其格式有两种:

(1)

WHILE 条件

循环体

WEND

(2)

DO WHILE 条件

循环体

LOOP

3.直到型循环

DO

循环体

LOOP UNTIL 条件

基本语句

CLS:即Clean the screen,清屏幕

输入语句:input“显示的内容”,变量名表

或者“,”改为“;”,改完之后输入时会多出一个“?”

输出语句:print “显示的内容”,变量名表1,“显示的内容”,变量名表2……

把,改为;时,两个内容间空1格,否则空14格左右,最后不加分号为换行。

赋值语句: 被赋值变量=表达式 'let 可有可无

一维数组的定义:dim 变量名(下标)

二维数组的定义:dim 变量名(下标1,下标2)

代码示例(赋值,求和运算,并显示结果)

A=10

B=20

C=A+B

Print C

END

变量

变量长度小于等于40,不允许出现关键词,如Let

数:如15%、-32768、215654#、2.0158e+15、8.545646d+20、-18.75等,变量名为例如a的变量名

字符串:如“15%”、“abc”等,变量名为例如a$的变量名

补充:在QB中还可以几何画图,具体用法如下(详见QB内部帮助)

SCREEN 12'639*479 16色图形模式

CIRCLE(100,150),10,4'在x坐标100与y坐标150处画一个半径为10的颜色为4(红色)的圆。

SYSTEM

简单的双重循环在冒泡排序程序的运用

CLS

DIM n AS INTEGER

INPUT n

DIM a(n)

FOR i = 1 TO n

INPUT a(i)

NEXT i

FOR i = 1 TO n

FOR j=1 TO i-1

IF a(j) > a(j+1) THEN SWAP a(j), a(j+1)

NEXT j

NEXT i

FOR i = 1 TO n

PRINT a(i)

NEXT i

END

几种常见的运算语句及函数

加运算:

AB之和=A+B

差运算:

AB之差=A-B

乘运算:

AB之积=A*B

除运算

AB商=A/B

乘方运算

A的B次方=A^B

开方运算

A开方=SQR(A)

交换变量

SWAP 值A,值B

初学者的练习题

1、输入20个数,求出它们的最大值、最小值和平均值。

2、在1——500中,找出能同时满足用3除余2,用5除余3,用7除余2的所有整数;

3、如果一个数从左边读和右边读都是同一个数,就称为回文数,例如686就是一个回文数?喑糖?000以内所有的回文数。

4、已知数列1、5、12、22、35、...?求出第20个数

6、输入10个正整数,计算它们的和,平方和

7、输入20个整数,统计其中正、负和零的个数;

8、输出1——999中能被3整除,且至少有一位数字是5的数;

9、有一个六位数,其个位数字7,现将个位数字移至首位(十万位),而其余各位数字顺序不变,得到一个新的六位数,假如新数为旧数的4倍,求原来的六位数。

10、有这样的一个六位数字labcde,将其乘以3后变成abcdel,编程求这个数。

11、试找出6个小于160而成等差数列的素数。

1-1/3+1/5-1/7+……直到某一项的绝对值小于10的-6次方

附加:

我们用一个正整数列来表示一段地方的高度,当一段地方的高度为一个逐一上升的序列时,

我们称它为一个阶梯,例如 4、5、6、7、8 是一个长度为 5 的阶梯。给定一个正整数列,

请找出它第一个最长的阶梯,并将其输出。如果一个阶梯也没有,输出“No”。

运行结果示例:

请输入数列的长度:8

请输入数列:2 3 2 3 4 4 5 6

结果为 2 3 4

快捷键

Ctrl+C+Break:中断正在运行的程序;

F5:运行程序;

Shift+F5:从第一条语句开始重新运行程序;

F4:当程序中断运行时,查看运行结果屏幕,再按一次F4则切换回代码屏幕;

F1:获得帮助。

F8:单步运行

F9:断点(同QB stop 语句,按F5继续运行)

范例

【1】菜场上一公斤香菇是7.5元,编一个程序,从键盘上输入重量,计算机自动算出其总价

INPUT X

zj=7.5*X

PRINT zj

END

【2】高精度乘法程序

CLS

INPUT a$

INPUT b$

la = LEN(a$)

lb = LEN(b$)

lc = la + lb

DIM a(la), b(lb), c(lc)

FOR i = 1 TO la

a(i) = VAL(MID$(a$, la + 1 - i, 1))

NEXT i

FOR i = 1 TO lb

b(i) = VAL(MID$(b$, lb + 1 - i, 1))

NEXT i

FOR i = 1 TO la

FOR j = 1 TO lb

x = a(i) * b(j): w = i + j - 1

c(w) = c(w) + x MOD 10

c(w) = c(w) MOD 10

NEXT j

NEXT i

DO WHILE c(lc) = 0

lc = lc - 1

LOOP

FOR i = lc TO 1 STEP -1

NEXT i

END

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}